$(function () {
    // 1-获取第一屏分类数据并渲染
    var pageSize = 2;
    var currentPage = 1;

    function render() {
        $.ajax({
            url: '/category/queryTopCategoryPaging',
            data: {
                page: currentPage,
                pageSize: pageSize
            },
            dataType: "json",
            success: function (info) {
                console.log(info);
                //渲染
                $('tbody').html(template('tmp', info));
                // 生成分页标签
                setPage(info.total);
            }
        })
    }
    render();

    //2- 生成分页标签
    function setPage(total) {
        $("#paginator").bootstrapPaginator({
            bootstrapMajorVersion: 3, //默认是2，如果是bootstrap3版本，这个参数必填
            currentPage: currentPage, //当前页
            totalPages: Math.ceil(total / pageSize), //总页数  
            // 点击分页标签的回调函数 
            onPageClicked: function (event, originalEvent, type, page) {
                //为按钮绑定点击事件 page:当前点击的按钮值
                currentPage = page; //更新当前页面
                //渲染对应页码
                render();
            }
        });
    }


    //3-验证表单 
    $('#form').bootstrapValidator({
        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled', ':hidden', ':not(:visible)'],

        //2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        // 3-验证的字段 
        fields: {
            //分类名称
            categoryName: {
                //验证规则
                validators: {
                    notEmpty: {
                        message: '一级分类不能为空'
                    }
                }
            }
        }
    });

    //4-点击确定按钮，在表单验证通过的情况下，向后台发生请求，添加分类数据，
    $('#form').on('success.form.bv', function (e) {
        e.preventDefault(); //阻止表单提交 
        $.ajax({
            url: '/category/addTopCategory',
            data: $('#form').serialize(),
            type: 'post',
            dataType: 'json',
            success: function (info) {
                console.log(info);    
                // 页面重新渲染第一页
                currentPage = 1;
                render();
                // 表单重置
                // resetForm() 默认情况下值重置验证样式， 不重置表单数据
                // resetForm(true) 既重置样式又重置数据
                $('#form').data('bootstrapValidator').resetForm(true); 
                // 模态框隐藏 
                $('.modal-add').modal('hide');
            }
        })
    })
});




